import hashlib
 
print(hashlib.algorithms_available)  # 显示支持的所有哈希算法
print(hashlib.algorithms_guaranteed)  # 显示标准 Python 中保证可用的算法


import hashlib
 
# 输入字符串
data = "Hello, World!"
 
# 计算 MD5 哈希值
md5_hash = hashlib.md5(data.encode())  # 转换为字节后计算哈希
print("MD5 哈希值:", md5_hash.hexdigest())  # 以十六进制形式输出


import hashlib
 
data = "Hello, World!"
 
# 计算 SHA-256 哈希值
sha256_hash = hashlib.sha256(data.encode())
print("SHA-256 哈希值:", sha256_hash.hexdigest())


import hashlib
 
data1 = "Hello, "
data2 = "World!"
 
# 创建哈希对象
sha256_hash = hashlib.sha256()
 
# 分块更新
sha256_hash.update(data1.encode())
sha256_hash.update(data2.encode())
 
# 获取最终哈希值
print("SHA-256 哈希值:", sha256_hash.hexdigest())



import hashlib
 
def calculate_file_hash(file_path):
    sha256_hash = hashlib.sha256()
 
    # 按块读取文件（避免大文件占用内存）
    with open(file_path, "rb") as f:
        for chunk in iter(lambda: f.read(4096), b""):  # 每次读取 4096 字节
            sha256_hash.update(chunk)
 
    return sha256_hash.hexdigest()
 
file_path = "renamed_example.txt"
print("文件的 SHA-256 哈希值:", calculate_file_hash(file_path))